# 逻辑运算符
"""
  and (并且)      两侧操作数均为True，表达式的值为 True，否则为False(一假则假)
  or (或者)       两侧操作数的值均为False，表达式的值为False，否则为True(一真则真)
  not (逻辑取反)   只有一个操作数，操作数为True，则返回False;操作数为False，则返回True

  在c++中  && 表示 并且   || 表示 或者  ! 表示 逻辑取反


重要细节：
        短路求值
        对于and操作符来说，如果左侧表达式为False，那么整体的值就一定是False，右侧表达式不必求
        对于or操作符来说，如果左侧
"""

# and
# a = 10
# b = 20
# c = 30
# print(a < b and b < c)
# print(a > b and b > c)
# print(a < b < c)

# or
# a = 10
# b = 20
# c = 30
# print(a > b or a < b)
# print(a > b or b > c)

# not
# a = 10
# b = 20
# c = 30
# print(not a < b)
# print(not b < c)

# 短路求值
a = 10
b = 20
print(a > b and 10 / 0 == 1)
print(a < b or 10 / 0 == 1)
